package com.wzdigit.wms.basic.domain.basic;

import com.baomidou.mybatisplus.annotation.*;
import com.wzdigit.framework.orm.model.BasicDomain;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 库区表：
 * 库位的集合
 * </p>
 *
 * @author 
 * @since 2020-12-28
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("WMS_ZONE")
@KeySequence(value = "WMS_ZONE_SEQ", clazz = Integer.class)
public class Zone extends BasicDomain {

	private static final long serialVersionUID = -1105173196816099352L;
	
	/**
	 * 库区_ID
	 */
	@TableId(value = "ZONE_ID", type = IdType.INPUT)
	private Integer zoneId;

    /**
     * 库区代码
     */
    @TableField("ZONE_CODE")
    private String zoneCode;

    /**
     * 库区名称
     */
    @TableField("ZONE_NAME")
    private String zoneName;

    /**
     * 区域ID
     */
    @TableField("ZONE_GROUP_ID")
    private Integer zoneGroupId;
    
    /**
     * 拣货过渡库位：
     * 表示该库区的货物执行拣货操作时，将被拣取到所指定库位
	 * 如果此字段有值，订单分配时从对应区拣货记录会直接将这个过渡库位作为拣货目的库。 通常情况下可跳过，不设置
     */
    @TableField("PICK_TO_LOC")
    private Integer pickToLoc;

    /**
     * 入库过渡库位
     * 表示入库流程中，需要上架到该库区的货物，将首先移动到制定的库位作为上架过渡。通常情况下可跳过，不设置
     */
    @TableField("PUTAWAY_TO_LOC")
    private Integer putawayToLoc;

    /**
     * 基地库位：
     * 用于设置库区的基地库位，通过基点计算目标库位的拣货距离
     */
    @TableField("BASE_LOC")
    private Integer baseLoc;

    /**
     * 是否支持整箱补货
     */
    @TableField("ALLOW_EA_RPL")
    private Integer allowEaRpl;

    /**
     * 是否支持拆零补货
     */
    @TableField("ALLOW_CS_RPL")
    private Integer allowCsRpl;

    /**
     * 状态
     */
    @TableField("STATUS")
    private Integer status;

    /**
     * 备注
     */
    @TableField("COMMENTS")
    private String comments;

    /**
     * 用户自定义字段1
     */
    @TableField("UDF1")
    private String udf1;

    /**
     * 用户自定义字段2
     */
    @TableField("UDF2")
    private String udf2;

    /**
     * 用户自定义字段3
     */
    @TableField("UDF3")
    private String udf3;

    /**
     * 用户自定义字段4
     */
    @TableField("UDF4")
    private String udf4;

    /**
     * 用户自定义字段5
     */
    @TableField("UDF5")
    private String udf5;
}